package com.industrial.premu.mapper;

import com.industrial.premu.domain.PreMuCompanyTax;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 企业自已填写的税收Mapper接口
 * 
 * @author SangGuangCan
 * @date 2024-05-20
 */
public interface PreMuCompanyTaxMapper 
{
    /**
     * 查询企业自已填写的税收
     * 
     * @param baseId 企业自已填写的税收主键
     * @return 企业自已填写的税收
     */
    public PreMuCompanyTax selectPreMuCompanyTaxByBaseId(String baseId);

    /**
     * 查询企业自已填写的税收列表
     * 
     * @param preMuCompanyTax 企业自已填写的税收
     * @return 企业自已填写的税收集合
     */
    public List<PreMuCompanyTax> selectPreMuCompanyTaxList(PreMuCompanyTax preMuCompanyTax);

    /**
     * 新增企业自已填写的税收
     * 
     * @param preMuCompanyTax 企业自已填写的税收
     * @return 结果
     */
    public int insertPreMuCompanyTax(PreMuCompanyTax preMuCompanyTax);

    /**
     * 修改企业自已填写的税收
     * 
     * @param preMuCompanyTax 企业自已填写的税收
     * @return 结果
     */
    public int updatePreMuCompanyTax(PreMuCompanyTax preMuCompanyTax);

    /**
     * 删除企业自已填写的税收
     * 
     * @param baseId 企业自已填写的税收主键
     * @return 结果
     */
    public int deletePreMuCompanyTaxByBaseId(String baseId);

    /**
     * 批量删除企业自已填写的税收
     * 
     * @param baseIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deletePreMuCompanyTaxByBaseIds(String[] baseIds);

    PreMuCompanyTax getCompanyInfoByCompanyId(@Param("uscc") String companyId,@Param("years") String years);


    List<PreMuCompanyTax> selectPreMuCompanyTaxListByUsccsAndYears(@Param("usccs") List<String> usccs, @Param("years")String years);

    void updateBatchPreMuCompanyTax(@Param("list") List<PreMuCompanyTax> collect);

    /**
     * 查询当前年份的企业的数量
     * @param years
     * @param uscc
     * @return
     */
    int selectCurrentYearCompanyCount(@Param("years") String years, @Param("uscc") String uscc);
}
